package com.av.db.dataobjects;

import java.io.Serializable;

import org.hibernate.lob.SerializableBlob;

/**
 * Clase que representa una imagen dada para un usuario en particular
 * 
 * @author Victor J Morales R
 * 
 */
public class Imagen implements Serializable {

	private static final long serialVersionUID = 1L;

	public static final String ID = "id";
	public static final String IMAGEN = "imagen";
	public static final String ADEUDO = "adeudo";

	// Miembros

	private int id;
	private SerializableBlob imagen;
	private Adeudo adeudo;

	// Funciones

	/**
	 * Obtiene el identificador de la tabla
	 */
	public int getId() {
		return id;
	}// getId

	/**
	 * Asigna el identificador de la tabla
	 * 
	 * @param id
	 */
	@SuppressWarnings("unused")
	private void setId(int id) {
		this.id = id;
	}// setId

	/**
	 * Obtiene el conjunto de bytes que conforman la imagen
	 * 
	 * @return
	 */
	public SerializableBlob getImagen() {
		return imagen;
	}// getImagen

	/**
	 * Asigna el conjunto de bytes que conforman la imagen dada
	 * 
	 * @param imagen
	 */
	public void setImagen(SerializableBlob imagen) {
		this.imagen = imagen;
	}// setImagen

	/**
	 * Obtiene el adeudo asociado con la imagen
	 * 
	 * @return
	 */
	public Adeudo getAdeudo() {
		return adeudo;
	}// getAdeudo

	/**
	 * Asigna el adeudo asociado con la imagen
	 * 
	 * @param adeudo
	 */
	public void setAdeudo(Adeudo adeudo) {
		this.adeudo = adeudo;
	}// setAdeudo

	public boolean equals(Object o) {
		if (o == null || !(o instanceof Imagen)) {
			return false;
		}
		return ((Imagen) o).getId() == id;
	}// equals

}// Imagen